Summary of Transform Objects
C Summary
Constants
#define kQ3TransformTypeMatrix Q3_OBJECT_TYPE('m','t','r','x') #define kQ3TransformTypeQuaternion Q3_OBJECT_TYPE('q','t','r','n') #define kQ3TransformTypeRotate Q3_OBJECT_TYPE('r','o','t','t') #define kQ3TransformTypeRotateAboutAxis Q3_OBJECT_TYPE('r','t','a','a') #define kQ3TransformTypeRotateAboutPoint Q3_OBJECT_TYPE('r','t','a','p') #define kQ3TransformTypeScale Q3_OBJECT_TYPE('s','c','a','l') #define kQ3TransformTypeTranslate Q3_OBJECT_TYPE('t','r','n','s')Data Types
typedef struct TQ3RotateTransformData { TQ3Axis axis; float radians; } TQ3RotateTransformData; typedef struct TQ3RotateAboutPointTransformData { TQ3Axis axis; float radians; TQ3Point3D about; } TQ3RotateAboutPointTransformData; typedef struct TQ3RotateAboutAxisTransformData { TQ3Point3D origin; TQ3Vector3D orientation; float radians; } TQ3RotateAboutAxisTransformData;Transform Objects Routines
Managing Transforms
TQ3ObjectType Q3Transform_GetType ( TQ3TransformObject transform); TQ3Matrix4x4 *Q3Transform_GetMatrix ( TQ3TransformObject transform, TQ3Matrix4x4 *matrix); TQ3Status Q3Transform_Submit(TQ3TransformObject transform, TQ3ViewObject view);Creating and Manipulating Matrix Transforms
TQ3TransformObject Q3MatrixTransform_New ( const TQ3Matrix4x4 *matrix); TQ3Status Q3MatrixTransform_Submit ( const TQ3Matrix4x4 *matrix, TQ3ViewObject view); TQ3Status Q3MatrixTransform_Get ( TQ3TransformObject transform, TQ3Matrix4x4 *matrix); TQ3Status Q3MatrixTransform_Set ( TQ3TransformObject transform, const TQ3Matrix4x4 *matrix);Creating and Manipulating Rotate Transforms
TQ3TransformObject Q3RotateTransform_New ( const TQ3RotateTransformData *data); TQ3Status Q3RotateTransform_Submit ( const TQ3RotateTransformData *data, TQ3ViewObject view); TQ3Status Q3RotateTransform_GetData ( TQ3TransformObject transform, TQ3RotateTransformData *data); TQ3Status Q3RotateTransform_SetData ( TQ3TransformObject transform, const TQ3RotateTransformData *data); TQ3Status Q3RotateTransform_GetAxis ( TQ3TransformObject transform, TQ3Axis *axis); TQ3Status Q3RotateTransform_SetAxis ( TQ3TransformObject transform, TQ3Axis axis); TQ3Status Q3RotateTransform_GetAngle ( TQ3TransformObject transform, float *radians); TQ3Status Q3RotateTransform_SetAngle ( TQ3TransformObject transform, float radians);Creating and Manipulating Rotate-About-Point Transforms
TQ3TransformObject Q3RotateAboutPointTransform_New ( const TQ3RotateAboutPointTransformData *data); TQ3Status Q3RotateAboutPointTransform_Submit ( const TQ3RotateAboutPointTransformData *data, TQ3ViewObject view); TQ3Status Q3RotateAboutPointTransform_GetData ( TQ3TransformObject transform, TQ3RotateAboutPointTransformData *data); TQ3Status Q3RotateAboutPointTransform_SetData ( TQ3TransformObject transform, const TQ3RotateAboutPointTransformData *data); TQ3Status Q3RotateAboutPointTransform_GetAxis ( TQ3TransformObject transform, TQ3Axis *axis); TQ3Status Q3RotateAboutPointTransform_SetAxis ( TQ3TransformObject transform, TQ3Axis axis); TQ3Status Q3RotateAboutPointTransform_GetAngle ( TQ3TransformObject transform, float *radians); TQ3Status Q3RotateAboutPointTransform_SetAngle ( TQ3TransformObject transform, float radians); TQ3Status Q3RotateAboutPointTransform_GetAboutPoint ( TQ3TransformObject transform, TQ3Point3D *about); TQ3Status Q3RotateAboutPointTransform_SetAboutPoint ( TQ3TransformObject transform, const TQ3Point3D *about);Creating and Manipulating Rotate-About-Axis Transforms
TQ3TransformObject Q3RotateAboutAxisTransform_New ( const TQ3RotateAboutAxisTransformData *data); TQ3Status Q3RotateAboutAxisTransform_Submit ( const TQ3RotateAboutAxisTransformData *data, TQ3ViewObject view); TQ3Status Q3RotateAboutAxisTransform_GetData ( TQ3TransformObject transform, TQ3RotateAboutAxisTransformData *data); TQ3Status Q3RotateAboutAxisTransform_SetData ( TQ3TransformObject transform, const TQ3RotateAboutAxisTransformData *data); TQ3Status Q3RotateAboutAxisTransform_GetOrigin ( TQ3TransformObject transform, TQ3Point3D *origin); TQ3Status Q3RotateAboutAxisTransform_SetOrigin ( TQ3TransformObject transform, const TQ3Point3D *origin); TQ3Status Q3RotateAboutAxisTransform_GetOrientation ( TQ3TransformObject transform, TQ3Vector3D *axis); TQ3Status Q3RotateAboutAxisTransform_SetOrientation ( TQ3TransformObject transform, const TQ3Vector3D *axis); TQ3Status Q3RotateAboutAxisTransform_GetAngle ( TQ3TransformObject transform, float *radians); TQ3Status Q3RotateAboutAxisTransform_SetAngle ( TQ3TransformObject transform, float radians);Creating and Manipulating Scale Transforms
TQ3TransformObject Q3ScaleTransform_New ( const TQ3Vector3D *scale); TQ3Status Q3ScaleTransform_Submit ( TQ3Vector3D *scale, TQ3ViewObject view); TQ3Status Q3ScaleTransform_Get(TQ3TransformObject transform, TQ3Vector3D *scale); TQ3Status Q3ScaleTransform_Set(TQ3TransformObject transform, const TQ3Vector3D *scale);Creating and Manipulating Translate Transforms
TQ3TransformObject Q3TranslateTransform_New ( const TQ3Vector3D *translate); TQ3Status Q3TranslateTransform_Submit ( const TQ3Vector3D *translate, TQ3ViewObject view); TQ3Status Q3TranslateTransform_Get ( TQ3TransformObject transform, TQ3Vector3D *translate); TQ3Status Q3TranslateTransform_Set ( TQ3TransformObject transform, const TQ3Vector3D *translate);Creating and Manipulating Quaternion Transforms
TQ3TransformObject Q3QuaternionTransform_New ( const TQ3Quaternion *quaternion); TQ3Status Q3QuaternionTransform_Submit ( const TQ3Quaternion *quaternion, TQ3ViewObject view); TQ3Status Q3QuaternionTransform_Get ( TQ3TransformObject transform, TQ3Quaternion *quaternion); TQ3Status Q3QuaternionTransform_Set ( TQ3TransformObject transform, const TQ3Quaternion *quaternion);Errors
kQ3ErrorScaleOfZero